<?php
class Estado extends Doctrine_Record {
    public function setTableDefinition() {
            $this->setTableName('estado');
            $this->hasColumn('contenido','string',50);
    }

    public static function visible () {
        return Doctrine::getTable('estado')->findOneByContenido('visible');
    }

    public static function noVisible () {
        return Doctrine::getTable('estado')->findOneByContenido('no visible');
    }

    public static function borrado () {
        return Doctrine::getTable('estado')->findOneByContenido('borrado');
    }

    public static function leido () {
        return Doctrine::getTable('estado')->findOneByContenido('leido');
    }

    public static function noLeido () {
        return Doctrine::getTable('estado')->findOneByContenido('no leido');
    }
    
    public static function toSelect ($estadosId=array(1,2,3,4,5), $objeto=false) {
        $q = Doctrine_Query::create()
            ->select('e.*')
            ->from('Estado e')
            ->whereIn('e.id', $estadosId);
        $estados = $q->execute();
        $html = '<select id="selectEstado" name="estado">';
        foreach ($estados as $estado) {
            $selected = ($estado->id == $objeto->estado->id)?'  selected="selected"':'';
            $html .= '<option value="'.$estado->id.'"'.$selected.'>'.$estado->contenido.'</option>';
        }
        $html .= '</select>';
        return $html;
    }
}
?>